/**   
* 所属公司：稻普控股集团
* @Title: RedisClient.java 
* @Package com.base.interceptor 
* 
* @author zhangpp
* @date 2017年3月24日 下午12:55:24 
* @version V1.0   
*/
package com.zjdiepu.www.redis;

import java.io.Serializable;

import org.springframework.dao.DataAccessException;
import org.springframework.data.redis.connection.RedisConnection;
import org.springframework.data.redis.core.RedisCallback;
import org.springframework.data.redis.core.ValueOperations;

/**   
 * 所属公司：稻普控股集团
 * 项目名称：dpqc-parent-manager-base   
 * 类名称：RedisClient   
 * 类描述：   
 * 创建人：zhangpp
 * 创建时间：2017年3月24日 下午12:55:24   
 * 修改人：zhangpp
 * 修改时间：2017年3月24日 下午12:55:24   
 * 修改备注：   
 * @version V1.0     
 */
public class RedisClient extends AbstractBaseRedisDao<String, Serializable>{

	public boolean put(final String keyId, final Serializable obj) {
		boolean result = redisTemplate.execute(new RedisCallback<Boolean>() {
			public Boolean doInRedis(RedisConnection connection) throws DataAccessException {
				ValueOperations<String, Serializable> valueOper = redisTemplate.opsForValue();
				valueOper.set(keyId, obj);
				return true;
			}
		}, false, true);
		return result;
	}

	public Serializable get(final String keyId) {
		Serializable result = redisTemplate.execute(new RedisCallback<Serializable>() {
			public Serializable doInRedis(RedisConnection connection) throws DataAccessException {
				ValueOperations<String, Serializable> operations = redisTemplate.opsForValue();
				Serializable obj = (Serializable) operations.get(keyId);
				return obj;
			}
		});
		return result;
	}
	
}
